package com.b511.swpu.cementbackend.entity;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.hibernate.annotations.GenericGenerator;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.*;
import java.util.Date;

@Entity
@Getter
@Setter
@Accessors(chain = true)
@Table(name = "CM_WORK_BASE_INFO")
// 对应表 CM_WORK_BASE_INFO
public class CM_WorkBaseInfo {
    @Id
    @GenericGenerator(name="cmWorkBaseInfoGenerator", strategy="uuid")
    @GeneratedValue(generator="cmWorkBaseInfoGenerator")
    private String CM_WorkBaseInfo_ID;

    // 井眼基本信息
    // 井名 做查询
    @Basic
    @Column(name = "WELLNAME", length = 50)
    private String wellName;

    // 套管尺寸 做查询
    @JsonIgnore
    @Basic
    @Column(name = "CASING_SIZE", length = 50)
    private String taoguanchicun;

    @Basic
    @Column(name = "COUNTRY", length = 50)
    private String country;

    @Basic
    @Column(name = "AREA", length = 50)
    private String area;

    @Basic
    @Column(name = "BLOCK", length = 50)
    private String block;

    @Basic
    @Column(name = "OILFIELD", length = 50)
    private String oilField;

    @Basic
    @Column(name = "GEOGRAPHICALPOSITION", length = 50)
    private String geographicalPosition;

    @Basic
    @Column(name = "STRUCTURALLOCATION", length = 50)
    private String structuralLocation;

    @Basic
    @Column(name = "WATERDEPTH", length = 50)
    private String waterDepth;

    @Basic
    @Column(name = "MUDLINE", length = 50)
    private String mudLine;

    @Basic
    @Column(name = "WELLTYPE", length = 50)
    private String wellType;

    @Basic
    @Column(name = "WELLSPACING", length = 50)
    private String wellSpacing;

    @Basic
    @Column(name = "WORKCOMPANY", length = 50)
    private String workCompany;

    @Temporal(TemporalType.DATE)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @Basic
    @Column(name = "DRILLINGSTARTTIME")
    private Date drillingStartTime;

    @Temporal(TemporalType.DATE)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @Basic
    @Column(name = "DRILLINGFINISHTIME")
    private Date drillingFinishTime;

    @Basic
    @Column(name = "ACTUALWELLDEPTH", length = 50)
    private String actualWellDepth;

    @Basic
    @Column(name = "HOLETEMPERATURE", length = 50)
    private String holeTemperature;

    @Basic
    @Column(name = "HOLEPRESSURE", length = 50)
    private String holePressure;

    @Basic
    @Column(name = "HOLEMAXDENSITY", length = 50)
    private String holeMaxDensity;

    // 作业基本信息
    @Basic
    @Column(name = "HOLESIZE", length = 50)
    private String holeSize;

    @Basic
    @Column(name = "HOLEDEPTH", length = 50)
    private String holeDepth;

    @Basic
    @Column(name = "CASINGSIZE", length = 50)
    private String casingSize;

    @Basic
    @Column(name = "CASINGBTMDEPTH", length = 50)
    private String casingBtmDepth;

    @Basic
    @Column(name = "RETURNDEPTH1", length = 50)
    private String returnDepth1;

    @Basic
    @Column(name = "CEMENTPLUG", length = 50)
    private String cementPlug;

    @Basic
    @Column(name = "ADDITIVEVOLUME1", length = 50)
    private String additiveVolume1;

    @Basic
    @Column(name = "RETURNDEPTH2", length = 50)
    private String returnDepth2;

    @Basic
    @Column(name = "PLUGTOPDEPTH", length = 50)
    private String plugTopDepth;

    @Basic
    @Column(name = "ADDITIVEVOLUME2", length = 50)
    private String additiveVolume2;

    @Basic
    @Column(name = "CEMENTTYPE", length = 50)
    private String cementType;

    // 泥浆信息
    @Basic
    @Column(name = "MUDTYPE", length = 50)
    private String mudType;

    @Basic
    @Column(name = "MUDDENSITY", length = 50)
    private String mudDensity;

    @Basic
    @Column(name = "FV", length = 50)
    private String FV;

    @Basic
    @Column(name = "PV", length = 50)
    private String PV;

    @Basic
    @Column(name = "YP", length = 50)
    private String YP;

    @Basic
    @Column(name = "CP", length = 50)
    private String CP;

    // 固井前循环参数
    @Basic
    @Column(name = "CYCLEDISPLACEMENT", length = 50)
    private String cycleDisplacement;

    @Basic
    @Column(name = "CYCLEPUMP", length = 50)
    private String cyclePump;

    @Basic
    @Column(name = "AV", length = 50)
    private String AV;

    // 施工配方和性能
    // 首浆
    @Basic
    @Column(name = "SLURYTYPE1", length = 50)
    private String sluryType1;

    @Basic
    @Column(name = "FOURMULA1", length = 50)
    private String fourmula1;

    @Basic
    @Column(name = "BHSTCT1", length = 50)
    private String BHSTCT1;

    @Basic
    @Column(name = "SLURYDENSITY1", length = 50)
    private String sluryDensity1;

    @Basic
    @Column(name = "PULPINGRATE1", length = 50)
    private String pulpingRate1;

    @Basic
    @Column(name = "MIXEDWATERRATE1", length = 50)
    private String mixedWaterRate1;

    @Basic
    @Column(name = "LOSTWATER1", length = 50)
    private String lostWater1;

    @Basic
    @Column(name = "FREEWATER1", length = 50)
    private String freeWater1;

    @Basic
    @Column(name = "COMPRESSIVESTRENGTH1", length = 50)
    private String compressiveStrength1;

    @Basic
    @Column(name = "PUMPTIME1", length = 50)
    private String pumpTime1;

    @Basic
    @Column(name = "THICKENINGTIME1", length = 50)
    private String thickeningTime1;

    // 中间液
    @Basic
    @Column(name = "SLURYTYPE2", length = 50)
    private String sluryType2;

    @Basic
    @Column(name = "FOURMULA2", length = 50)
    private String fourmula2;

    @Basic
    @Column(name = "BHSTCT2", length = 50)
    private String BHSTCT2;

    @Basic
    @Column(name = "SLURYDENSITY2", length = 50)
    private String sluryDensity2;

    @Basic
    @Column(name = "PULPINGRATE2", length = 50)
    private String pulpingRate2;

    @Basic
    @Column(name = "MIXEDWATERRATE2", length = 50)
    private String mixedWaterRate2;

    @Basic
    @Column(name = "LOSTWATER2", length = 50)
    private String lostWater2;

    @Basic
    @Column(name = "FREEWATER2", length = 50)
    private String freeWater2;

    @Basic
    @Column(name = "COMPRESSIVESTRENGTH2", length = 50)
    private String compressiveStrength2;

    @Basic
    @Column(name = "PUMPTIME2", length = 50)
    private String pumpTime2;

    @Basic
    @Column(name = "THICKENINGTIME2", length = 50)
    private String thickeningTime2;

    // 尾浆
    @Basic
    @Column(name = "SLURYTYPE3", length = 50)
    private String sluryType3;

    @Basic
    @Column(name = "FOURMULA3", length = 50)
    private String fourmula3;

    @Basic
    @Column(name = "BHSTCT3", length = 50)
    private String BHSTCT3;

    @Basic
    @Column(name = "SLURYDENSITY3", length = 50)
    private String sluryDensity3;

    @Basic
    @Column(name = "PULPINGRATE3", length = 50)
    private String pulpingRate3;

    @Basic
    @Column(name = "MIXEDWATERRATE3", length = 50)
    private String mixedWaterRate3;

    @Basic
    @Column(name = "LOSTWATER3", length = 50)
    private String lostWater3;

    @Basic
    @Column(name = "FREEWATER3", length = 50)
    private String freeWater3;

    @Basic
    @Column(name = "COMPRESSIVESTRENGTH3", length = 50)
    private String compressiveStrength3;

    @Basic
    @Column(name = "PUMPTIME3", length = 50)
    private String pumpTime3;

    @Basic
    @Column(name = "THICKENINGTIME3", length = 50)
    private String thickeningTime3;

    // 作业数据
    // 首浆
    @Basic
    @Column(name = "SLURYVOL1", length = 50)
    private String sluryVol1;

    @Basic
    @Column(name = "DRYCEMENTVOL1", length = 50)
    private String dryCementVol1;

    @Basic
    @Column(name = "MIXWATERVOL1", length = 50)
    private String mixWaterVol1;

    @Basic
    @Column(name = "SLURYMAXDENSITY1", length = 50)
    private String sluryMaxDensity1;

    @Basic
    @Column(name = "SLURYMINDENSITY1", length = 50)
    private String sluryMinDensity1;

    @Basic
    @Column(name = "SLURYAVGDENSITY1", length = 50)
    private String sluryAvgDensity1;

    @Basic
    @Column(name = "REPLACEVOL1", length = 50)
    private String replaceVol1;

    @Basic
    @Column(name = "REPLACESPEED1", length = 50)
    private String replaceSpeed1;

    @Basic
    @Column(name = "MAXDISPLACEMENT1", length = 50)
    private String maxDisplacement1;

    @Basic
    @Column(name = "WORKTIME1", length = 50)
    private String workTime1;

    @Basic
    @Column(name = "WORKMAN1", length = 50)
    private String workMan1;

    @Basic
    @Column(name = "WORKDATE1", length = 50)
    private String workDate1;

    // 中间液
    @Basic
    @Column(name = "SLURYVOL2", length = 50)
    private String sluryVol2;

    @Basic
    @Column(name = "DRYCEMENTVOL2", length = 50)
    private String dryCementVol2;

    @Basic
    @Column(name = "MIXWATERVOL2", length = 50)
    private String mixWaterVol2;

    @Basic
    @Column(name = "SLURYMAXDENSITY2", length = 50)
    private String sluryMaxDensity2;

    @Basic
    @Column(name = "SLURYMINDENSITY2", length = 50)
    private String sluryMinDensity2;

    @Basic
    @Column(name = "SLURYAVGDENSITY2", length = 50)
    private String sluryAvgDensity2;

    @Basic
    @Column(name = "REPLACEVOL2", length = 50)
    private String replaceVol2;

    @Basic
    @Column(name = "REPLACESPEED2", length = 50)
    private String replaceSpeed2;

    @Basic
    @Column(name = "MAXDISPLACEMENT2", length = 50)
    private String maxDisplacement2;

    @Basic
    @Column(name = "WORKTIME2", length = 50)
    private String workTime2;

    @Basic
    @Column(name = "WORKMAN2", length = 50)
    private String workMan2;

    @Basic
    @Column(name = "WORKDATE2", length = 50)
    private String workDate2;

    // 尾浆
    @Basic
    @Column(name = "SLURYVOL3", length = 50)
    private String sluryVol3;

    @Basic
    @Column(name = "DRYCEMENTVOL3", length = 50)
    private String dryCementVol3;

    @Basic
    @Column(name = "MIXWATERVOL3", length = 50)
    private String mixWaterVol3;

    @Basic
    @Column(name = "SLURYMAXDENSITY3", length = 50)
    private String sluryMaxDensity3;

    @Basic
    @Column(name = "SLURYMINDENSITY3", length = 50)
    private String sluryMinDensity3;

    @Basic
    @Column(name = "SLURYAVGDENSITY3", length = 50)
    private String sluryAvgDensity3;

    @Basic
    @Column(name = "REPLACEVOL3", length = 50)
    private String replaceVol3;

    @Basic
    @Column(name = "REPLACESPEED3", length = 50)
    private String replaceSpeed3;

    @Basic
    @Column(name = "MAXDISPLACEMENT3", length = 50)
    private String maxDisplacement3;

    @Basic
    @Column(name = "WORKTIME3", length = 50)
    private String workTime3;

    @Basic
    @Column(name = "WORKMAN3", length = 50)
    private String workMan3;

    @Basic
    @Column(name = "WORKDATE3", length = 50)
    private String workDate3;

    // 清洗液
    @Basic
    @Column(name = "CLEANINGFLUIDFORMULA", length = 50)
    private String cleaningFluidFormula;

    @Basic
    @Column(name = "CLEANINGFLUIDDENSITY", length = 50)
    private String cleaningFluidDensity;

    @Basic
    @Column(name = "CLEANINGFLUIDVOL", length = 50)
    private String cleaningFluidVol;

    // 隔离液
    @Basic
    @Column(name = "SPACERFLUIDFORMULA", length = 50)
    private String spacerFluidFormula;

    @Basic
    @Column(name = "SPACERFLUIDDENSITY", length = 50)
    private String spacerFluidDensity;

    @Basic
    @Column(name = "SPACERFLUIDVOL", length = 50)
    private String spacerFluidVol;


}
